数据结构--队列实现舞伴配对问题

假设在周末舞会上,男士们和女士们进入舞厅时,各自排成一队。
跳舞开始时,依次从男队和女队的队头上各出一人配成舞伴。
若两队初始人数不相同,则较长的那一队中未配对者等待下一伦舞曲。
现写一算法模拟上述舞伴配对问题。

 

(C语言版本)       运行平台visual studio 2008

#include <stdio.h>
#define maxsize 7
typedef  int  elemtype;

typedef struct  
    {
  elemtype  queue[maxsize];      
     int front, rear;
  }queuetype;

//初始化男队的人数
void  initmalequeue(queuetype  *qmale)
 {
      qmale->front=qmale->rear=maxsize - 1; 
 }

//初始化女队的人数 
void  initfemalequeue(queuetype  *qfemale)
 {
      qfemale->front=qfemale->rear=(maxsize-2) - 1; 
 }

void  menter(queuetype  *Q, elemtype x, int max)  //男队入队操作
{
 if ((Q->rear+1)% max == Q->front )  
  printf("overflow/n");  //判断是否队满
  else
    {
  Q->rear++;   //队尾指针后移
  Q->queue[Q->rear

  • 5
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值